
#define MIDI_FAILED             0
#define MIDI_BUFFER_FULL        0
#define MIDI_PLAYING            1
#define MIDI_PAUSED             2
#define MIDI_FINISHED           3


#define NOTEOFF                 0x80
#define NOTEON                  0x90
#define AFTERTOUCH              0xa0
#define CONTROLCHANGE           0xb0
#define PROGRAMCHANGE           0xc0
#define CHANNELPRESSURE         0xd0
#define PITCHWHEEL              0xe0
#define SYSTEM                  0xf0

#define SYSTEM_EXCL1            0x0
#define SYSTEM_EXCL2            0x7
#define SYSTEM_META             0xf
#define SYSTEM_END              0xf7

#define META_SETTEMPO           0x51


int midifile_start(char *ptr, int size, int *duration);
int midifile_poll(int*pos, int (playevent)(int event, int ms), int available, int maxtime);
void midifile_stop(void);
int midifile_pause(int pause, int timefrozen);
